home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / BARNET / FREENET / MELL / NETLIB00 / NetLib / c / netof < prev    next >
Text File  |  1995-02-28  |  602b  |  34 lines

  1. #include "arpa/inet.h"
  2. #include "netinet/in.h"
  3.  
  4. /*
  5.  * Extract a network number from an internet address
  6.  */
  7. u_long inet_netof(struct in_addr in)
  8. {
  9.   u_long net;
  10.  
  11.   if (IN_CLASSA(in.s_addr))
  12.   {
  13.     /* Extract a class A network number */
  14.     net = in.s_addr & IN_CLASSA_NET;
  15.   }
  16.   else if (IN_CLASSB(in.s_addr))
  17.   {
  18.     /* Extract a class B network number */
  19.     net = in.s_addr & IN_CLASSB_NET;
  20.   }
  21.   else if (IN_CLASSC(in.s_addr))
  22.   {
  23.     /* Extract a class C network number */
  24.     net = in.s_addr & IN_CLASSC_NET;
  25.   }
  26.   else
  27.   {
  28.     /* Not a known address format */
  29.     net = 0;
  30.   }
  31.  
  32.   return net;
  33. }
  34.